Nginx目录与配置文件

您所在的位置:网站首页 nginx 多配置文件 Nginx目录与配置文件

Nginx目录与配置文件

2023-10-27 14:50| 来源: 网络整理| 查看: 265

Nginx目录

Nginx 文件结构比较简洁,主要包括配置文件和二进制可执行程序,通过安装包形式安装的 nginx 文件结构跟各 Linux 发行版目录规则存放配置文件和二进制文件的位置,目录结构及文件功能如下:

[root@localhost ~]# tree /usr/local/nginx /usr/local/nginx ├── client_body_temp # POST 大文件暂存目录 ├── conf # Nginx所有配置文件的目录 │ ├── fastcgi.conf # fastcgi相关参数的配置文件 │ ├── fastcgi.conf.default # fastcgi.conf的原始备份文件 │ ├── fastcgi_params # fastcgi的参数文件 │ ├── fastcgi_params.default │ ├── koi-utf │ ├── koi-win │ ├── mime.types # 媒体类型 │ ├── mime.types.default │ ├── nginx.conf #这是Nginx默认的主配置文件,日常使用和修改的文件 │ ├── nginx.conf.default │ ├── scgi_params # scgi相关参数文件 │ ├── scgi_params.default │ ├── uwsgi_params # uwsgi相关参数文件 │ ├── uwsgi_params.default │ └── win-utf ├── fastcgi_temp # fastcgi临时数据目录 ├── html # Nginx默认站点目录 │ ├── 50x.html # 错误页面优雅替代显示文件,例如出现502错误时会调用此页面 │ └── index.html # 默认的首页文件 ├── logs # Nginx日志目录 │ ├── access.log # 访问日志文件 │ ├── error.log # 错误日志文件 │ └── nginx.pid # pid文件,Nginx进程启动后,会把所有进程的ID号写到此文件 ├── proxy_temp # 临时目录 ├── sbin # Nginx 可执行文件目录 │ └── nginx # Nginx 二进制可执行程序 ├── scgi_temp # 临时目录 └── uwsgi_temp # 临时目录 Nginx配置文件

Nginx 主配置文件/usr/local/nginx/conf/nginx.conf 是一个纯文本类型的文件,整个配置文件是以区块的形式组织,通常每一个区块以一对大括号{}来表示开始与结束。提示:若编译安装则 nginx.conf 位于编译时所指定目录。

Main 位于 nginx.conf 配置文件的最高层;

Main 层下可以有 Event、HTTP 层;

Http 层下面允许有多个 Server 层,用于对不同的网站做不同的配置;

Server 层下面允许有多个 Location,用于对不同的路径进行不同模块的配置。

全局配置部分用来配置对整个 server 都有效的参数。主要会设置一些影响 nginx 服务器整体运行的配置指令,主要包括配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等

#设置运行用户,当运行NGINX时,进程所使用的用户,则进程拥有该用户对文件或目录的操作权限。 #user nobody; #设置工作进程数量,一般情况下工作进程数等于CPU核心数。 worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; #==事件配置==# events { #设置每个Worker进程可处理的并发连接数量,可根据需求合理配置此值。建议与"worker_rlimit_nofile"指令的值一致或更小。 worker_connections 1024; } #==核心配置==# http { #设置还包含其他配置文件,“mime.types”文件,记录MIME类型与文件后缀的映射关系,MIME类型是互联网媒体类型的缩写。所以该文件是用于WEB服务可以识别的、允许用户上传的这些后缀相关的媒体文件。 include mime.types; #如果mime类型未匹配上文件类型,那么就会使用二进制流的方式进行传输。 default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; #启用或禁用"sendfile()"函数的调用,"on" or "off","on"表示启用,"off"表示禁用。当线程响应时,"sendfile()"函数会报告线程数据不在内存中而是在硬盘中, #则线程直接去硬盘拿到响应数据直接传送给用户,而无需调用内存去硬盘拿响应数据,省去了调用内存的步骤,在小型WEB项目中可以提高请求响应效率,若是重量 #级WEB项目,为了平衡磁盘IO则不建议开启。我们也可以将此指令称之为高效传输模式。 sendfile on; #启用或禁用TCP_NOPUSH套接字选项,"on" or "off","on"表示启用,启用此项的前提是必须开启"sendfile","off"表示禁用。有时候在传输一个响应数据时,可能会 #产生多个小块数据包传出,可能这个小块数据包头部大小为30字节,而真正数据信息只有1字节,在高并发环境下会导致网络拥塞、带宽不够用问题。开启此项则传出 #的数据包会积累一下在传出,可以防止网络拥塞,减少带宽的占用。 #tcp_nopush on; #keepalive_timeout 0; ##设置保持客户端连接活跃状态的超时时间,单位为秒。 keepalive_timeout 65; #gzip on; #==WEB站点配置==# #在NGINX中我们可以配置多个"server {}",表示多个虚拟主机。则我们可以将每个"server {}"分离到另外一个配置文件中,即一个配置文件对应一个WEB站点。 server { #监听端口号 listen 80; #可以配置配置域名以及主机名,域名可以进行根据规则匹配,具体自行百度。 server_name localhost; #charset koi8-r; #设置访问日志文件路径,用于记录每个访问请求,“main”调用上面日志格式 #access_log logs/host.access.log main; #设置访问位置(URI),即用户访问的URL的尾部部分。当匹配到请求的URI时,则呈现由"{ }"中定义的内容。location指令针对于匹配URI可以嵌入正则表达式, #实现一些高级应用,详细用法请参考《HTTP配置高级指令》。 location / { #设置WEB应用根目录。为相对于/usr/local/nginx的htnl目录 root html; #设置默认首页文件,当用户访问域名或IP地址是自动索引呈现该文件中的内容,该文件在若为相对路径则会在WEB应用根目录下。 index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # #表示访问服务端出错,那么就会跳到50x.html页面,展示该页面的内容 error_page 500 502 503 504 /50x.html; #表示访问50x.html页面时,50x.html没有,那么就会去/usr/local/nginx的htnl目录去找到50x.html location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3